建立備份集

備份要求

請確保系統符合以下要求:

  1. 軟件要求: Oracle 12c 的資料庫備份可以在下列平台上進行:Windows Server 2008/ 2008 R2/ 2012/ 2012 R2/ 2016.
  2. %edition_name% 安裝: Oracle 資料庫伺服器上必須安裝最新版本的 %edition_name% 。
  3. Oracle 資料庫伺服器擴充模組: 請確保%edition_name%用戶賬號已經開啟了 Oracle 資料庫伺服器擴充模組。
  4. 備份配額要求: 請確保%edition_name%用戶賬號擁有分配足夠的存儲配額用以容納Oracle資料庫備份集的存儲容量和保存政策。
  5. 實時備份模組: 如果需要開啟實時備份功能,請確保已經開啟了實時備份擴充模組。例如:你可以對你的Oracle實例進行每半小時或每小時一次的存檔日誌實時備份。
  6. Java heap大小: %edition_name% 的默認Java heap大小設置為2048MB。對於Oracle資料庫備份,強烈建議您將Java heap大小設置提升為至少 4096MB 以達至更佳的備份及還原性能。實際的Java heap大小取決於Oracle伺服器上之可用記憶體空間。
  7. 暫存資料夾: %edition_name% 上的暫存資料夾用作儲存存檔日誌備份及備份過程中所產生之增量或差異檔案。為達至最佳備份/還原性能,建議暫存資料夾位於本地磁碟機並且有大量空白磁碟空間。
    磁碟空間計算公式如下:
    (總資料庫大小 * 差異率) * 備份目標儲存位置數目 = 最大所需磁碟空間
    例如: 由於默認差異率為50%,如果 Oracle 資料庫大小為1TB並且只有一個備份目標儲存位置,那麼暫存資料夾所需磁碟空間為500GB。
  8. 主機名: 為確保支援還原至原始位置,請在建立Oracle 備份集時輸入 127.0.0.1 作為主機名。
  9. Oracle內部流程檢查: 為使得Oracle實例執行流暢,請確保Oracle實例內部流程工作正常,例如:DBWO (Database Writer), LGWR (Log Writer), MMAN (Memory Manager Process), PMON (Process Monitor), PSPO (Process Spawner Process), SMON (System Monitor), CKPT (Checkpoint process (thread on Windows) that runs by default on Windows), ARCO (Archive Process (or thread on Windows)), RECO (Distributed Recovery Background Process).
    SQL> select name, description from v$bgprocess where PADDR <>'00';
    NAME     DESCRIPTION
    -----   ---------------------------------------
    PMON     process cleanup
    VKTM     Virtual Keeper of TiMe process
    GEN0     generic0
    DIAG     diagnosibility process
    DBRM     DataBase Resource Manager
    VKRM     Virtual sKeduler for Resource Manager
    PSP0     process spawner 0
    DIA0     diagnosibility process 0
    MMAN     Memory Manager
    DBW0     db writer process 0
    TMON     Transport Monitor
    ARC0     Archival Process 0
    ARC1     Archival Process 1
    ARC2     Archival Process 2
    ARC3     Archival Process 3
    LGWR     Redo etc.
    CKPT     checkpoint
    SMON     System Monitor Process
    SMCO     Space Manager Process
    RECO     distributed recovery
    LREG     Listener Registration
    CJQ0     Job Queue Coordinator
    AQPC     AQ Process Coord
    MMON     Manageability Monitor Process
    MMNL     Manageability Monitor Process 2
  10. Oracle資料庫伺服器支援版本: 請確保%edition_name%支援Oracle資料庫伺服器版本。
    SQL> select * from v$version;
    Banner
    ---------------------------------------------------------
    Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
    PL/SQL Release 12.1.0.1.0 - Production
    CORE 12.1.0.1.0 Production
    TNS for 64-bit Windows: Version 12.1.0.1.0 - Production
    NLSRTL Version 12.1.0.1.0 – Production
  11. 系統標識符(SID): 通過下列方法查詢SID:
  12. Oracle_home 路徑: 通過下列方法查詢Oracle_home 路徑:
    !

    請注意init.ora文檔中的oracle_home 路徑與通過SQL指令獲得的路徑必須一致。如果不一致,請聯繫Oracle資料庫管理員尋求支援。

  13. Oracle連接埠號碼: 採用 netstat 和 tnsping 來找出連接埠號碼。Oracle默認連接埠號碼為1521。
  14. Windows VSS Writer: 請確保Oracle資料庫伺服器上安裝Windows VSS Writer並且Writer狀態為Stable。可以通過執行vssadmin list writers 指令來驗證。
    C:\Users\Administrator>vssadmin list writers
    vssadmin 1.1 - Volume Shadow Copy Service administrative command-line tool
    (C) Copyright 2001-2012 Microsoft Corp.

    Writer name: 'Task Scheduler Writer'
    Writer Id: {d61d61c8-d73a-4eee-8cdd-f6f9786b7124}
    Writer Instance Id: {1bddd48e-5052-49db-9b07-b96f96727e6b}
    State: [1] Stable
    Last error: No error

    Writer name: 'VSS Metadata Store Writer'
    Writer Id: {75dfb225-e2e4-4d39-9ac9-ffaff65ddf06}
    Writer Instance Id: {088e7a7d-09a8-4cc6-a609-ad90e75ddc93}
    State: [1] Stable
    Last error: No error

    Writer name: 'Performance Counters Writer'
    Writer Id: {0bada1de-01a9-4625-8278-69e735f39dd2}
    Writer Instance Id: {f0086dda-9efc-47c5-8eb6-a944c3d09381}
    State: [1] Stable
    Last error: No error

    Writer name: 'System Writer'
    Writer Id: {e8132975-6f93-4464-a53e-1050253ae220}
    Writer Instance Id: {635755cd-b461-426c-89d1-95682a185005}
    State: [1] Stable
    Last error: No error

    Writer name: 'ASR Writer'
    Writer Id: {be000cbe-11fe-4426-9c58-531aa6355fc4}
    Writer Instance Id: {b01dbf5b-b437-48ca-882f-c7ec08ef0a50}
    State: [1] Stable
    Last error: No error

    Writer name: 'COM+ REGDB Writer'
    Writer Id: {542da469-d3e1-473c-9f4f-7847f01fc64f}
    Writer Instance Id: {8fdde399-1d13-40e7-97c5-595bbf52b291}
    State: [1] Stable
    Last error: No error

    Writer name: 'BITS Writer'
    Writer Id: {4969d978-be47-48b0-b100-f328f07ac1e0}
    Writer Instance Id: {7993a1e2-e51d-461f-b6f9-e64c93fad1ae}
    State: [1] Stable
    Last error: No error

    Writer name: 'WMI Writer'
    Writer Id: {a6ad56c2-b509-4e6c-bb19-49d8f43532f0}
    Writer Instance Id: {792c367d-1e21-4644-a63a-7d8ee4e2aaac}
    State: [1] Stable
    Last error: No error

    Writer name: 'Shadow Copy Optimization Writer'
    Writer Id: {4dc3bdd4-ab48-4d07-adb0-3bee2926fd7f}
    Writer Instance Id: {82fd1722-afcd-4f8e-95fd-8e5a2111c84c}
    State: [1] Stable
    Last error: No error

    Writer name: 'Registry Writer'
    Writer Id: {afbab4a2-367d-4d15-a586-71dbb18f8485}
    Writer Instance Id: {723e8efc-3758-40c4-aaeb-88a4f43702d3}
    State: [1] Stable
    Last error: No error
  15. TNS Listener: 請確保開啟TNS listener以允許連結到Oracle。使用下列指令查詢TNS listener是否已開啟:
    C:\Users\Administrator>lsnrctl status
    LSNRCTL for 64-bit Windows: Version 12.1.0.1.0 - Production on 06-MAR-2018 10:46:34
    Copyright (c) 1991, 2013, Oracle. All rights reserved.
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
    STATUS of the LISTENER
    ------------------------
    Alias        LISTENER
    Version      TNSLSNR for 64-bit Windows: Version 12.1.0.1.0 - Production
    Start Date   26-FEB-2018 15:20:48
    Uptime       7 days 19 hr. 25 min. 46 sec
    Trace Level   off
    Security     ON: Local OS Authentication
    SNMP         OFF
    Listener Parameter File     D:\app\oracle\product\12.1.0\dbhome_1\network\admin\listener.ora
    Listener Log File     D:\app\oracle\diag\tnslsnr\w12x-5-43\listener\alert\log.xml
    Listening Endpoints Summary...
    (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=w12x-5-43)(PORT=1521)))
    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=w12x-5-43)(PORT=5500))(Security=(my_wallet_directory=D:\APP\ORACLE\admin\orcl12c\xdb_wallet))(Presentation=HTTP)(Session=RAW))
    Services Summary...
    Service "CLRExtProc" has 1 instance(s).
    Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Service "orcl12c" has 1 instance(s).
    Instance "orcl12c", status READY, has 1 handler(s) for this service...
    Service "orcl12cXDB" has 1 instance(s).
    Instance "orcl12c", status READY, has 1 handler(s) for this service...
    Service "pdborcl12c" has 1 instance(s).
    Instance "orcl12c", status READY, has 1 handler(s) for this service...
    The command completed successfully
    如果未開啟,使用下列指令開啟TNS listener:
    C:\Users\Administrator>lsnrctl start
    LSNRCTL for 64-bit Windows: Version 12.1.0.1.0 - Production on 19-DEC-2017 16:34:33
    Copyright (c) 1991, 2013, Oracle. All rights reserved.
    TNS-01106: Listener using listener name LISTENER has already been started
  16. ARCHIVELOG模式及資料庫狀態

  17. Java 安裝: Oracle資料庫上必須安裝Java。
    SQL > select comp_name, status from dba_registry;
    COMP_NAME                               STATUS
    ---------                               ------------
    OWB                                     VALID
    Oracle Application Express               VALID
    Oracle Enterprise Manager               VALID
    OLAP Catalog                             VALID
    Spatial                                 VALID
    Oracle Multimedia                       VALID
    Oracle XML Database                     VALID
    Oracle Text                             VALID
    Oracle Expression Filter                 VALID
    Oracle Rules Manager                     VALID
    Oracle Workspace Manager                 VALID
    Oracle Database Catalog Views           VALID
    Oracle Database Packages and Types       VALID
    JServer JAVA Virtual Machine             VALID
    Oracle XDK                               VALID
    Oracle Database Java Package             VALID
  18. 用於認證備份/還原之Oracle登錄賬號: 應用Oracle system 賬戶以連結Oracle。
  19. Oracle資料庫磁碟機: Oracle資料庫磁碟機必須使用可以支援VSS快照的文檔系統,例如NTFS,因為%edition_name% v7 應用VSS快照進行Oracle資料庫備份。
  20. Windows用戶賬號許可: Windows用戶賬號必須屬於下列安全組。
  21. Oracle資料庫相關的Windows服務: 請確保已經開始全部Oracle資料庫相關的Windows服務。

限制

  1. %edition_name% 不支援進階Oracle資料庫設置,例如:Clusterware 或 RAC (Real Application Clusters), ASM (Automatic Storage Management), Data Guard 等.
  2. Oracle Database 12c只支援於 Windows 平台.
  3. 備份來源選擇:

最佳實踐和建議

  1. Oracle資料庫伺服器需要通過定期完整資料庫(Tablespaces, Control & Init File, Archived Logs)備份進行保護,建議至少每星期完整備份一次。
  2. 存檔日誌備份應該定期進行,備份頻率取決於存檔日誌的往來數目。資料庫的往來越多,存檔日誌備份應該越頻繁。
  3. 對於完整資料庫備份,當系統活動很低時應開啟排程備份以達至最佳備份性能。
  4. 為提供最大程度的數據保護和靈活還原選項,建議進行下列配置:
        至少一個非本地或雲儲存位置。
        至少一個本地儲存位置以進行快速還原。
  5. 定期測試還原以確保備份設置且執行無誤。進行還原測試也可以幫助鑒定潛在問題或還原計劃的缺口。 不要嘗試將測試簡易化是非常重要的,因為測試成功的目的不是證明所有過程都是無誤的。 通過測試可能會發現還原計劃中的缺陷,鑒定這些缺陷是十分重要的。
  6. 還原原始文件選項是為進階Oracle用戶而制定,只有在熟知并理解Oracle資料庫時方可使用,否則並不建議使用這種還原選項因為需要應用額外的Oracle技術進行手動還原。 請參考以下文章以獲取更多相關資訊: https://docs.oracle.com/database/121/BRADV/title.htm .

設置備份集細節

欄位 描述
名稱 這是備份集的名稱。你可以建立一個有意義的名稱。
備份集類型 從下拉框中輸入正確的備份集類型。
登錄ID 這是登錄ID。默認登錄ID 為system
密碼 這是用於system登錄的密碼。
主機 這是Oracle伺服器的主機。默認為127.0.0.1
連接埠 這是Oracle 的TNS listener 連接埠。默認為1521
SID 這是Oracle SID.

建立備份集:

  1. 輸入一個有意義的備份集名稱。
  2. 輸入正確的備份集類型,例如: Oracle Database Server Backup。
  3. 輸入登錄ID。
  4. 輸入密碼。
  5. 輸入主機名稱。
  6. 輸入連接埠。
  7. 輸入SID。
  8. 點擊[下一頁] 按鈕繼續。